A network, such as an Internet protocol (IP)-based network, may have redundant links or connections between nodes. For example, a server may be connected via redundant links to multiple routers or switches. While nodes may be redundantly connected via multiple links, network configuration may prevent the multiple links from being used at the same time. For example, in a local area network (LAN), packets may be forwarded by a layer 2 packet forwarding device. To prevent loops and packet duplication, an appropriate layer 2 protocol, such as spanning tree protocol (STP), may be used to create a loop-free topology. For example, STP may be used to create a spanning tree within a network of connected layer 2 packet forwarding devices. In particular, STP may block redundant links such that only a single active path between any two network nodes is used for forwarding packets.
While STP and similar protocols prevent loops and loop-related problems, the redundant links are effectively dormant unless a currently active link fails or becomes inactive, at which time the redundant link may become active. Thus, for a network where every node is connected to every other node by two or more links, STP and similar protocols typically may result in an inefficient use of available resources (e.g., available network bandwidth) due to loop preventing blocking.
One solution to prevent this inefficient use of available resources is to use additional connections and link layer logic in the network that allows more than one active link between two nodes to be utilized. For example, multiple physical links on one device that are connected to the same second device can be treated as a single logical connection in which all of the links can be simultaneously utilized. One layer 2 methodology in which multiple physical links between two devices are treated as a single logical connection where all of the links can be simultaneously utilized is referred to as link aggregation. The collection of links that form a single logical connection between two devices is referred herein to as a link aggregation group (LAG). Defining a LAG allows multiple redundant physical links between the same 2 nodes to be used without requiring STP blocking because each LAG member implements forwarding rules to prevent packet duplication and looping.
One layer 2 methodology in which multiple physical links associated with different switches that are treated as a single logical connection is referred to as multi-switch link aggregation. The collection of links associated with different switches that form a single logical connection is referred to herein as a multi-switch link aggregation group (MLAG). Physical ports on switches or routers that are members of the same LAG or MLAG are referred to herein as peer LAG or MLAG ports. Like LAGs, MLAGs allow redundant connections to be fully utilized without requiring STP blocking by implementing forwarding rules that prevent packet duplication and looping.
Currently, 2-node MLAGs provide for efficient use of network resources by allowing ports on different switches to be treated as part of the same MLAG. However, it is desirable to extend MLAGs beyond 2-node MLAGs. Extending MLAGs beyond 2-node groups increases the complexity of MLAG packet forwarding rules, especially when one or more links associated with an MLAG fail.
Accordingly, in light of these difficulties, there exists a need for improved methods, systems, and computer readable media for n-node MLAGs.